import BaseEnumValue from '@/core/utils/BaseEnumValue'
import BaseEnum from '@/core/utils/BaseEnum'

class EasyCaptchaCharTypeEnum extends BaseEnum<string> {
	TYPE_DEFAULT = new BaseEnumValue<string>('TYPE_DEFAULT', '数字和字母混合')
	TYPE_ONLY_NUMBER = new BaseEnumValue<string>('TYPE_ONLY_NUMBER', '纯数字')
	TYPE_ONLY_CHAR = new BaseEnumValue<string>('TYPE_ONLY_CHAR', '纯字母')
	TYPE_ONLY_UPPER = new BaseEnumValue<string>('TYPE_ONLY_UPPER', '纯大写字母')
	TYPE_ONLY_LOWER = new BaseEnumValue<string>('TYPE_ONLY_LOWER', '纯小写字母')
	TYPE_NUM_AND_UPPER = new BaseEnumValue<string>('TYPE_NUM_AND_UPPER', '数字和大写字母')

	constructor() {
		super(['TYPE_NUM_AND_UPPER', 'TYPE_ONLY_LOWER', 'TYPE_DEFAULT', 'TYPE_ONLY_NUMBER', 'TYPE_ONLY_CHAR', 'TYPE_ONLY_UPPER'])
	}
}

const enumModel = new EasyCaptchaCharTypeEnum()

export default enumModel
